export default {
    /*
    * 节流函数
    * fn:Function 目标函数
    * interval : Number 多久调用一次 （ms）
    * */
    throttle: (fn, interval = 300) => {
        let canRun = true;
        return function () {
            if (!canRun) return;
            canRun = false;
            setTimeout(() => {
                fn.apply(this, arguments);
                canRun = true;
            }, interval);
        };

    },
    /*
    * 函数防抖
    * fn : Function 目标函数
    * interval : Number 多久之后执行函数 （ms）
    * */
    debounce: (fn, interval = 300) => {
        let timeout = null;
        return function () {
            clearTimeout(timeout);
            timeout = setTimeout(() => {
                fn.apply(this, arguments);
            }, interval);
        };
    }
};
